Island cutting method

ABSTRACT

The present invention relates to an area cutting method for cutting an area (AR) delimited by a curve (OLC) of an external shape and a plurality of closed curves (INC 1 , INC 2 ) using a unidirectional cutting method or a back-and-forth cutting method. The area cutting method has a step of calculating first and second offset curves (INF 1 , INF 2 ) obtained by outwardly offsetting respective closed curves by an amount dependent upon tool diameter, a step of calculating points of intersection (R i  -U i ) between each of the offset curves and an i-th cutting path (PT i ), a step of moving a tool (TL), while the tool performs cutting, along the cutting path from a machining starting point (P i ) on the i-th cutting path (PT i ), to a first point of intersection (R i ), of the two points of intersection (R i , S i ) between the cutting path and the first offset curve (INF 1 ), a step, executed in a case where a second point of intersection (R i ) between the first offset curve and the cutting path lies inside the second offset curve (INF 2 ), of moving the tool, without the tool performing cutting, from the first point of intersection (R i ) to that point of intersection (U i ) of two points of intersection (T i , U i ) between the second offset curve and the cutting path which does not lie inside the first offset curve, and a step of moving the tool, while the tool performs cutting, along the cutting path up to a machining end point (Q i ).

CROSS REFERENCES TO RELATED APPLICATIONS

This application is related to U.S. applications having Ser. Nos. 767,797; 776,205 and 768,118.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates to an area cutting method in a numerically controlled machine tool and, more particlarly, to an area cutting method for cutting an area delimited by a curve of an external shape and at least two closed curves which lie within the curve of the external shape.

2. Description of The Related Art

Forms of numerically controlled machining include cutting in which the interior of an area bonded by the curve of an external shape comprising straight lines and circular arcs is hollowed out down to a predetermined depth, and die milling in which the interior of an area is die milled. In such machining, as shown in FIG. 1(A), an area cutting method is conventionally carried out by performing cutting along an (i-1)th cutting path PT_(i-1) in one direction (the direction of the solid-line arrow), raising the tool a predetermined amount at the completion of cutting, then positioning the tool directly above a cutting starting point Ps on the next, or i-th, cutting path PT_(i) by moving the tool in the direction of the dashed-line arrow, thereafter lowering the tool to the cutting starting point Ps, moving the tool along the i-th cutting path PT_(i) in the direction of the solid line arrow, and subsequently repeating the above unidirectional cutting.

Another area cutting method shown in FIG. 1(B) includes, following completion of cutting along the cutting path PT_(i-1) of the (i-1)th cutting path, moving the tool from a cutting end point Pe to the cutting starting point Ps on the next, or i-th, cutting path, and thereafter performing cutting along the i-th cutting path PT_(i). Thus, cutting is performed back and forth in the direction of the solid-line arrows.

There are cases where it is required to cut an area AR (shaded portion) delimited by a curve OLC of an external shape and a closed curve INC inside the curve of the external shape, as shown in FIG. 2. The reason is that it is necessary to form bolt holes, which are needed for effecting a connection to another part, in the area (hereafter referred to as an "island") IRD bounded by the closed curve INC, or to hollow out the island IRD to a depth less than that of the area AR by using a different tool.

Thus, if the island IRD is present inside the curve of the external shape, the area AR (the shaded portion in FIG. 2) delimited by the shape OLC of the external curve and the closed curve INC is cut, in accordance with the conventional method shown in FIG. 1(A) or 1(B), by (a) obtaining intersection points P_(i), Q_(i) between a straight line SL_(i) and the curve OLC (actually an offset curve) of the external shape, and obtaining intersection points R_(i), S_(i) between the straight line SL_(i) and the closed curve INC (actually an offset curve), (b) then moving the tool in a cutting-feed mode from the point P_(i) to the point R_(i) after positioning the tool at the point P_(i), which is a cutting starting point, (c) raising the tool along the +Z axis up to an approach plane APP (FIG. 3) after the tool arrives at the point R_(i), (d) moving the tool in a rapid-traverse mode on the approach plane APP, after the tool has arrived at the approach plane APP, at a point S_(i) ' directly above the point S_(i), (e) then lowering the tool in the cutting-feed mode to the point S_(i), (f) thereafter moving the tool in the cutting-feed mode from the point S_(i) to the point Q_(i), and (g) subsequently repeating steps (a) through (f) for the next cutting path.

Area cutting can thus be carried out with the conventional methods even if the island IRD is present. However, the conventional methods cannot be applied if two or more islands are present and the spacing between the islands is small. By way of example, the conventional methods cannot be applied if, as shown in FIG. 4, two islands IRD₁, IRD₂ reside so close together inside the curve OLC of the external shape that offset curves INF₁, INF₂ intersect. The latter curves being obtained by offsetting closed curves INC₁, INC₂, which specify the respective islands, by a predetermined amount D (e.g., a value obtained by adding tool radius r_(a) and finishing tolerance t). If the conventional methods are forced into use in this case, the tool TL will unfortunately cut into either island IRD₁ or island IRD₂ in the vicinity of the intersection CSA.

SUMMARY OF THE INVENTION

Accordingly, an object of the present invention is to provide an area cutting method wherein, even if two or more islands reside so close together inside the curve OLC of the external shape that the offset curves INF₁, INF₂ of the respective closed curves INC₁, INC₂ specifying the islands intersect each other to give rise to a portion which is impossible to area-cut, a remaining area-cuttable portion, from which the abovementioned portion is omitted, is capable of being area-cut.

The present invention relates to an area cutting method for cutting an area delimited by a curve of an external shape and a plurality of closed curves using a unidirectional cutting method or a back-and-forth cutting method. The area cutting method has a step of calculating first and second offset curves obtained by outwardly offsetting each of the closed curves (assumed to be two in number) by an amount dependent upon tool diameter, a step of calculating points of intersection between each of the offset curves and an i-th cutting path, a step of moving a tool, while the tool performs cutting, along the cutting path from a machining starting point on the i-th cutting path to a first point of intersection of two points of intersection between the cutting path and the first offset curve, a step, executed in a case where a second point of intersection between the first offset curve and the cutting path lies inside the second offset curve, of moving the tool, without the tool performing cutting, from the first point of intersection to that point of intersection of two points of intersection between the second offset curve and the cutting path which does not lie inside the first offset curve, and a step of thereafter moving the tool, while the tool performs cutting, along the cutting path up to a machining end point, whereby an area delimited by the first and second offset curves is not cut.

In a case where the second point of intersection of the two points of intersection between the first offset curve and the cutting path does not lie inside the second offset curve, the tool is moved, without performing cutting, from the first point of intersection to the second point of intersection, the tool is then moved while performing cutting along the cutting path from the second point of intersection to one of the points of intersection between the cutting path and the second offset curve, the tool is then moved, without performing cutting, from said point of intersection to the other point of intersection between the cutting path and the second offset curve, and the tool is subsequently moved while performing machining along the cutting path up to the machining end point.

BRIEF DESCRIPTION OF THE DRAWINGS

FIGS. 1(A), 1(B) are views for describing conventional area cutting methods using unidirectional and back-and-forth cutting;

FIGS. 2 and 3 are views for describing a conventional cutting method for a case where an island is present;

FIG. 4 is a view for describing the drawback of the conventional area cutting methods;

FIG. 5 is a view for describing the present invention in general terms;

FIG. 6 is a block diagram of an apparatus for practicing the area cutting method of the present invention;

FIGS. 7A & 7B are flowcharts of processing for implementing the area cutting method of the present invention;

FIG. 8 is a view for describing offset processing; and

FIGS. 9A & 9B are flowcharts of processing for creating an NC tape for area cutting.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 5 is a view for describing the present invention in general terms. The present invention provides an area cutting method for cutting an area AR delimited by a curve OFC of an external shape and at least two closed curves INC₁, INC₂ while lie within the curve of the external shape by moving a tool TL relative to a workpiece along a cutting path PT_(i) to perform cutting, moving the tool to a machining starting point on the next cutting path PT_(i+1), which is shifted from the cutting path PT_(i) by a predetermined amount, after the completion of cutting along the cutting path PT_(i), and thereafter moving the tool relative to the workpiece along the next cutting path PT_(i+1) to perform cutting. The area cutting method has a step of calculating an offset curve OFC of an external shape obtained by inwardly offsetting a curve OLC of an external shape by an amount dependent upon tool diameter, as well as first and second offset curves INF₁, INF₂ obtained by outwardly offsetting respective closed curves INC₁, INC₂ by an amount dependent upon tool diameter, a step of calculating points of intersection P_(i) U_(i) between each of the offset curves OFC, INF₁, INF₂ and an i-th cutting path PT_(i), a step of moving a tool, while the tool performs cutting, along the cutting path from a machining starting point P_(i), which is the point of intersection between the offset curve OFC of the external shape and the cutting path PT_(i), to one point of intersection R_(i) between the cutting path and the first offset curve INF₁, a step, executed in a case where the other point of intersections S_(i) between the first offset curve and the cutting path lies inside the second offset curve INF₂, of moving the tool, without the tool performing cutting, from the point of intersection R_(i) to that point of intersection U_(i) of two points of intersection between the second offset curve INF₂ and the cutting path PT_(i) which does not lie inside the first offset curve INF₁, and a step of moving the tool, while the tool performs cutting, along the cutting path up to a machining end point Q_(i), which is the other point of intersection between the offset curve OFC of the external shape and the cutting path.

FIG. 6 is a block diagram of an apparatus for practicing the method of the present invention, and FIG. 7 is a flowchart of processing according to the present invention. The area cutting method of the present invention will now be described with respect to FIGS. 5, 6 and 7.

(1) When a cycle start button on an operator's panel 101 is pressed, a processor 102 causes an NC data reader 103 to read one block of NC data from an NC tape 104. The NC tape 104 stores area cutting data in addition to ordinary path data, G-function instruction data and M-, S- and T-function instruction data. Stored at the end of the NC program is an M code (M02) indicating the end of the program. Placed at the beginning of the area cutting data is an area cutting command indicating that the data which follow are the area cutting data. Placed at the end of the area cutting data is a code indicative of the end of the area cutting data.

(2) The processor 102, placed under the control of a control program stored in a ROM 105, checks whether an item of the read NC data is "M02", which is indicative of the program end. If the item of data is "M02", numerical control processing is ended.

(3) If the item of read NC data is not "M02" indicative of the program end, then the processor 102 checks whether the item of NC data is the area machining command.

(4) If the item of NC data is not the area machining command, the processor 102 executes ordinary numerical control processing.

By way of example, if an item of NC data is an M-, S- or T-function instruction, the processor delivers the data to a machine tool 107 via an interface circuit 106 between an NC unit and the machine. When the machine tool 107 generates a completion signal indicating completion of processing for the M-, S- or T-function instruction, the processor causes the NC data reader 103 to read the next item of NC data.

If the item of NC data is path data, then the following path control processing is executed. Specifically, the processor obtains incremental values X_(i), Y_(i), Z_(i) along the respective axes, obtains velocity components F_(x), F_(y), F_(z) along the respective axes from equations

    F.sub.x =X.sub.i ·F/√X.sub.i.sup.2 +Y.sub.i.sup.2 +Z.sub.i.sup.2                                            (1a)

    F.sub.y =Y.sub.i ·F/√X.sub.i.sup.2 +Y.sub.i.sup.2 +Z.sub.i.sup.2                                            (1b)

    F.sub.z =Z.sub.i ·F/√X.sub.i.sup.2 +Y.sub.i.sup.2 +Z.sub.i.sup.2                                            (1c)

based on the incremental values and a commanded feed velocity F, thereafter obtains traveling quantities ΔX, ΔY, ΔZ, which are to be traversed along the respective axes in a predetermined period of time ΔT seconds (=8 msec), from equations

    ΔX=F.sub.x ·ΔT                        (2a)

    ΔY=F.sub.y ·ΔT                        (2b)

    ΔZ=F.sub.z ·ΔT                        (2c)

The processor delivers ΔX, ΔY, ΔZ to a pulse distributor 108 every ΔT sec. On the basis of the input data (ΔX, ΔY, ΔZ), the pulse distributor 108 performs a simultaneous three-axis pulse distribution calculation to generate distributed pulses X_(p), Y_(p), Z_(p). The distributed pulses are applied as inputs to servo circuits 109X, 109Y, 109Z for the respective axes to rotate servomotors 110X, 110Y, 110Z. The tool is thus moved relative to the workpiece toward a target position.

The processor 102, in accordance with the following formulae, updates the present position X_(a), Y_(a) Z_(a) along the respective axes every ΔT sec, X_(a), Y_(a), Z_(a) having been stored in a working memory 112:

    X.sub.a ±ΔX→X.sub.a                        (3a)

    Y.sub.a ±ΔY→Y.sub.a                        (3b)

    Z.sub.a ±ΔZ→Z.sub.a                        (3c)

The sign depends upon the direction of movement. Similarly, in accordance with the following formulae, the processor 102 updates remaining traveling distances X_(r), Y_(r), Z_(r) (the initial values of which are the incremental values X_(i), Y_(i), Z_(i), respectively) every ΔT sec, X_(r), Y_(r), Z_(r) having been stored in the working memory 112:

    X.sub.r -ΔX→X.sub.r                           (4a)

    Y.sub.r -ΔY→Y.sub.r                           (4b)

    Z.sub.r -ΔZ→Z.sub.r                           (4c)

When the following condition is established:

    X.sub.r =Y.sub.r =Z.sub.r =0                               (5)

the processor 102 then causes the NC data reader 103 to read the next item of NC data.

(5) If the item of NC data is found to be the area cutting command at the decision step (3), the processor 102 causes the NC data reader 103 to read the area cutting data and store the data in a RAM 111 until the code indicating the end of the area cutting data is read out. It should be noted that the area cutting data are (1) data specifying the curve OLC of the external shape of the area, (2) data specifying the two closed curves INC₁, INC₂ inside the curve of the external shape, (3) cutting direction data (data indicating that the tool is to be moved in the direction of the arrow A or in the direction of an arrow D in FIG. 5), (4) cut-in direction data (data indicating that the cutting path is to be shifted in the direction of the arrow B or in the direction of an arrow C in FIG. 5), (5) pitch P in the cut-in direction (the amount of cutting path shift), (6) cutting velocity, (7) coorindate values of a starting point P_(s) in the cut-in direction, (8) coordinate values of an end point P_(e) in the cut-in direction, (9) the position of an approach plane, and the like. Hereafter we will assume that the cutting direction is the +X direction, that the cut-in direction is the +Y direction, that the approach plane is parallel to the XY plane at a height Z_(A), that the coordinate values of the cut-in direction starting point P_(s) are (X_(s), Y_(s)), and that the coordinate values of the cut-in direction end point P_(e) are (X_(e),Y_(e)).

(6) When the reading of the area cutting data ends, the processor 102 calculates, and stores in the RAM 111, an offset curve OFC of the external shape offset from the curve OLC of the external shape by a distance D (=r_(a) +t), the latter being obtained by adding the tool radius r_(a) and the finishing tolerance t, as well as the first and second offset curves INF₁, INF₂ offset outwardly from the closed curves INC₁, INC₂, respectively, by the distance D. It should be noted that D=r_(a) is permissible. Also, the tool radius r_(a) is obtained by reading a radius value corresponding to a commanded tool number from an offset memory 113, which stores the correspondence between tool numbers and tool radii. The offset curve OFC of the external shape and the first and second offset curves INF₁, INF₂ are found through the following processing. Specifically, as shown in FIG. 8, let two straight lines specifying the curve OLC of the external shape be S1 and S2. Straight lines S1', S2' offset from the straight lines S1, S2, respectively, by the distance D are found. The intersection P2 of the straight lines S1', S2' is then found. The intersection P2 is one point specifying the offset curve OFC of the external shape. Accordingly, if points of intersection are found in a similar manner and stored in the RAM 111, the offset curve OFC of the external shape will be obtained. The first and second offset curves INF₁, INF₂ are found in a similar manner.

(7) When the offset curve OFC of the external shape and the first and second offset curves INF₁, INF₂ have been found, the processor 102 causes the offset curve data to be displayed on a display unit 114 together with data specifying the curve OLC of the external shape and data specifying the closed curves INC₁, INC₂. As a result, the curve OLC of the external shape and the closed curves INC₁, INC₂ are displayed in the form of solid lines, as well as the offset curves in the form of dashed lines, on a CRT screen using a well-known method. By observing the display, an operator is capable of perceiving that a portion which cannot be area-cut exists, this being the case if the offset curves indicated by the dashed lines intersect each other. The operator also perceives that a shape actually cut by subsequent processing may differ slightly from the desired shape.

(8) Next, the processor 102 performs the operation 1→i.

(9) The processor 102 then executes processing for specifying the k-th cutting path PT_(i) (see FIG. 5). Specifically, the processor 102 first generates a straight line SL_(i). Note that the straight line SL_(i) is expressed by the equation

    y=Y.sub.s +P·i

(10) Thereafter, the processor 102 calculates intersection points P_(i), Q_(i) where the straight line SL_(i) intersects the offset curve OFC of the external shape, and obtains intersection points R_(i), S_(i) and T_(i), U_(i) between the straight line SL_(i) and the first and second offset curves INF₁, INF₂, respectively. Of the intersection points P_(i), Q_(i), that which has the larger X coordinate value is treated as the machining starting point, and that which has the smaller X coordinate value is treated as the machining end point.

(11) If the intersection points R_(i), T_(i) do not exist (in which case the intersection points S_(i), U_(i) also will be non-existent as a matter of course), the processor 102 executes the path processing similar to that of step (4) to move the tool in the cutting-feed mode from the machining starting point P_(i) to the machining end point Q_(i), thereby performing cutting along the i-th cutting path PT_(i).

(12) If only one of the intersection points R_(i), T_(i) exists (we shall assume that only the point R_(i) exists), the processor 102 executes the path processing of step (4) to move the tool in the cutting-feed mode from the machining starting point P_(i) to the point R_(i), raises the tool along the +Z axis in the rapid-traverse mode up to the approach plane after the tool arrives at the point R_(i), moves the tool on the approach plane in the rapid-traverse mode to a point directly above the point S_(i) after the tool arrives at the approach plane, then lowers the tool in the cutting-feed mode to the point S_(i), and thereafter moves the tool in the cutting-feed mode from the point S_(i) to the machining end point Q_(i) to perform cutting along the i-th cutting path PT_(i).

(13) If both of the intersection points R_(i), T_(i) exist, the processor 102 compares the values of the X coordinates x_(r), x_(t) of the intersection points R_(i), T_(i), respectively.

(14) If x_(r) ≧x_(t) is true, the processor 102 performs path processing similar to that of step (4) to move the tool in the cutting-feed mode (i.e., while the tool performs cutting) from the machining starting point P_(i) to the point R_(i). After arrival at the point R_(i), the tool is raised up to the approach plane in the rapid-traverse mode along the +Z axis and then, after its arrival at the approach plane, the tool is moved in the rapid-traverse mode along the approach plane to a point S_(i) ' directly above the point S_(i). Note that if x_(r) <x_(t) is true, processing is performed in the same manner as for the case x_(r) ≧x_(t) and therefore need not be described here.

(15) Thereafter, or in parallel with the path processing of step (14), the processor 102 determines whether the point S_(i) lies inside the second offset curve INF₂. The decision is based on whether or not the following relation is true:

    x.sub.u ≦x.sub.s ≦x.sub.t                    (6)

where x_(s) represents the X coordinate value of the point S_(i) and x_(t), x_(u) stand for the X coordinate values of the points T_(i), U_(i), respectively. Specifically, it is decided that the point S_(i) lies inside the second offset curve INF₂ if relation (6) is satisfied and outside the offset curve INF₂ if relation (6) is not satisfied.

(16) If point S_(i) lies outside the second offset curve INF₂, the tool is lowered in the cutting-feed mode from point S_(i) ' to point Si, then moved in the cutting-feed mode (i.e., while performing cutting) from the point S_(i) to the point T_(i), raised in the rapidtraverse mode along the +Z axis up to the approach plane after arrival at the point T_(i), moved in the rapid-traverse mode along the approach plane to a point U_(i) ', directly above the point U_(i) after arrival at the approach plane, lowered in the cutting-feed mode from point U_(i) ' to point U_(i), and thereafter moved in the cutting-feed mode from point U_(i) to the machining end point Q_(i). Thus, cutting is performed along the i-th cutting path PT_(i).

(17) If the result of the decision at step (15) is that the point S_(i) lies inside the offset curve INF₁, the processor 102 moves the tool in the rapid-traverse mode along the approach plane from the point S_(i) ' to the point U_(i) ' directly above the point U_(i). The tool is then moved in the cutting-feed mode from the point U_(i) to the machining end point Q_(i). Thus, cutting is performed along the i-th cutting path PT_(i).

(18) When machining along the cutting path PTi ends, the processor 102 obtains the difference ΔY (=Y_(e) -Y_(a)) between the present position coordinate (stored in the working memory 112) Y_(a) along the Y axis and the Y-axis coordinate Y_(e) of the cut-in direction end point P_(e) and determines whether or not the difference is greater than the pitch P.

(19) If ΔY≧P is true, the processor 102 performs the operation

    i+1→i

and repeats the processing from step (9) onward.

(20) If ΔY<P is true, then the processor 102 moves the tool along each of the offset curves OFC, INF₁, INF₂ in the cutting-feed mode to machine the uncut portions, thereby ending area cutting. The processor subsequently reads the next item of NC data and repeats the foregoing processing.

In the case described above, an area cutting command is inserted into an NC tape in advance, cutting paths are generated successively by using the area cutting data that follow the area cutting command, and area cutting is performed by moving a tool along the cutting paths. However, the present invention is not limited to such an arrangement. As an example, an arrangement is possible in which area cutting data are entered, NC data for area cutting are created through a technique similar to that described above using the area cutting data, and area cutting is performed upon feeding the NC data into an NC unit. FIG. 9 is a flowchart of processing for creating NC data for such area cutting. The only difference between this flowchart and that of FIG. 7 is that instead of moving the tool in the cutting-feed mode or positioning the tool in the rapid-traverse mode, NC data for cutting or for positioning are created.

Further, the present invention has been described for a case where the invention is applied to area cutting performed by repeating unidirectional or back-and-forth cutting. However, the invention is not limited to such an arrangement but can be applied to a case where area cutting is performed by obtaining an offset curve offset by a predetermined amount from the curve of an external shape, cutting along the offset curve thereafter obtaining another offset curve offset by a predetermined amount from the above-mentioned offset curve, cutting along this other offset curve and subsequently repeating the foregoing operations.

According to the present invention as described above, even if two or more islands reside so close together inside the curve OLC of the external shape that the offset curves INF₁, INF₂ of the respective closed curves INC₁, INC₂ specifying the islands intersect each other to give rise to a portion which is impossible to area-cut, a remaining area-cuttable portion, from which the above-mentioned uncuttable portion is omitted, is capable of being area-cut. Accordingly, the invention is well-suited for application to numerically controlled machining. 

What we claim is:
 1. An area cutting method for cutting an area delimited by a curve of an external shape and at least two closed curves which lie within said curve of the external shape, comprising the steps of:moving a tool relative to a workpiece along a first cutting path to perform cutting; moving the tool to a machining starting point on a second cutting path, which is shifted from said first cutting path by a predetermined amoount, after the completion of cutting along said first cutting path; moving the tool relative to the workpiece along the second cutting path to peform cutting; calculating first and second offset curves obtained by outwardly offsetting respective closed curves by an amount dependent upon tool diameter; moving the tool, while the tool performs cutting, along the second cutting path to a first point of intersection R_(i) of two points of intersection between said second cutting path and the first offset curve; checking, after cutting said first cutting path, before moving the tool, without the tool performing cutting, to that point of intersection U_(i) of two points of intersection T_(i) and U_(i) between the second offset curve and the second cutting path which does not lie inside the first offset curve, whether a second point of intersection S_(i) lies between the two points of intersection T_(i) and U_(i) between the second cutting path and the second offset curve to determine whether said second point of intersection lies inside the second offset curve; moving the tool, without the tool performing cutting, to that point of intersection U_(i) of two points of intersection T_(i) and U_(i) between the second offset curve and the second cutting path which does not lie inside the first offset curve when said second point of intersection S_(i) between said first offset curve and the second cutting path lies inside the second offset curve; and moving the tool, while the tool performs cutting, along the second cutting path from said point of intersection U_(i) to a machining end point on the cutting path.
 2. An area cutting method according to claim 1, further comprising the steps of:moving the tool, without the tool performing cutting, from said first point of intersection R_(i) to said second point of intersection S_(i) when said second point of intersection S_(i) does not lie inside the second offset curve; moving the tool, while the tool performs cutting, along the second cutting path from said second point of intersection S_(i) to one of the points of intersection T_(i) between said second cutting path and the second offset curve; and moving the tool, without the tool performing cutting, from said point of intersection T_(i) to the other point of intersection U_(i) between the second cutting path and the second offset curve.
 3. An area cutting method according to claim 2, further comprising the step of:checking, before moving the tool, without the tool performing cutting, to that point of intersection U_(i) of two points of intersection T_(i) and U_(i) between the second offset curve and the second cutting path which does not lie inside the first offset curve, whether said second point of intersection S_(i) lies between the two points of intersection T_(i) and U_(i) between the second cutting path and the second offset curve to determine whether said second point of intersection lies inside the second offset curve.
 4. An area cutting method for cutting an area delimited by a curve of an external shape and at least two closed curves which lie within said curve of the external shape, comprising the steps of:moving a tool relative to a workpiece along a first cutting path to perform cutting; moving the tool to a machining starting point on a second cutting path, which is shifted from the first cutting path by a predetermined amount, after the completion of cutting along the first cutting path; moving the tool relative to the workpiece along the second cutting path to perform cutting; calculating first and second offset curves obtained by outwardly offsetting respective closed curves by an amount dependent upon tool diameter; moving the tool, while the tool performs cutting, along with second cutting path to a first point of intersection R_(i) of two points of intersection between said second cutting path and the first offset curve; checking, after cutting along said first cutting path, before moving the tool, without the tool performing cutting, to that point of intersection U_(i) of two points of intersection T_(i) and U_(i) between the second offset curve and the second cutting path which does not lie inside the first offset curve, whether a second point of intersection S_(i) lies between the two points of intersection T_(i) and U_(i) between the second cutting path and the second offset curve to determined whether said second point of intersection lies inside the second offset curve; moving the tool, without the tool performing cutting, to that point of intersection U_(i) of two points of intersection T_(i) and U_(i) between the second offset curve and the second cutting path which does not lie inside the first offset curve when a second point of intersection S_(i) between the first offset curve and the second cutting path lies inside the second offset curve; and moving the tool, while the tool performs cutting, along the second cutting path from said point of intersection U_(i) to a machining end point on the cutting path.
 5. An area cutting method according to claim 4, further comprising the steps of:moving the tool, without the tool performing cutting, from said first point of intersection R_(i) to said second point of intersection S_(i) when said second point of intersection S_(i) does not lie inside the second offset cruve; moving the tool, while the tool performs cutting, along the second cutting path from said second point of intersection S_(i) to one of the points of intersection T_(i) between said cutting path and the second offset curve; and moving the tool, without the tool performing cutting, from said point of intersection T_(i) to the other point of intersection U_(i) between the second cutting path and the second offset curve.
 6. An area cutting method according to claim 5, further comprising the step of checking, before moving the tool, without the tool performing cutting, to that point of intersection U_(i) of two points of intersection T_(i) and U_(i) between the second offset curve and the second cutting path which does not lie inside the first offset curve, whether said second point of intersection S_(i) lies between the two points of intersection T_(i) and U_(i) between the second cutting path and the second offset curve to determine whether said second point of intersection lies inside the second offset curve.
 7. An area cutting method for cutting an area bounded by an external shape curve and including two closed curves inside the external shape curve, comprising the steps of:(a) producing an external offset curve; (b) producing first and second offset curves for the two closed curves; (c) beginning machining path processing; (d) obtaining, after beginning machining path processing, first through sixth points of intersection between a straight line and the two offset curves and the external offset curve where the first and sixth points are for the intersection with the external offset curve, the second and third points are for the intersection with the first offset curve and the fourth and fifth points are for the intersection with the second offset curve; (e) determining whether the two offset curves intersect along the straight line using the points of intersection; (f) machining along the straight line between the first and second points, moving without machining between the second and third points, machining along the straight line between the third and fourth points, moving without machining between the fourth and fifth points and machining along the straight line between the fifth and sixth points when the two offset curves do not intersect along the straight line; and (g) machining along the straight line between the first and second points, moving without machining between the second and fifth points, and machining along the straight line between the fifth and sixth points when the two offset curves intersect along the straight line.
 8. A method according to claim 7, wherein each of the intersection points have a coordinate value along the straight line and step d) comprises comparing the coordinate values of the third and fourth points, and if the coordinate value of the third point is less than or equal to the coordinate value of the fourth point making a determination that the two offset curves intersect along the straight line. 